package br.com.tautologia.mc.parcelamento.dao.entidades;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.hibernate.envers.Audited;

@Audited
@Entity
@Table(name = "ENDERECO")
public class Endereco extends ObjetoPersistente {

	private static final long serialVersionUID = 1L;

	private Pessoa pessoa;
	private String logradouro;
	private String cep;

	public Endereco() {
	}

	public Endereco(Pessoa pessoa, String logradouro) {
		this(logradouro);
		this.pessoa = pessoa;
	}

	public Endereco(String logradouro) {
		this.logradouro = logradouro;
	}

	@ManyToOne(optional = false)
	@JoinColumn(referencedColumnName = "ID", name = "PESSOA_ID", nullable = false)
	public Pessoa getPessoa() {
		return pessoa;
	}

	public void setPessoa(Pessoa pessoa) {
		this.pessoa = pessoa;
	}

	@Column(name = "LOGRADOURO", nullable = false, length = 200)
	public String getLogradouro() {
		return logradouro;
	}

	public void setLogradouro(String logradouro) {
		this.logradouro = logradouro;
	}

	@Column(name = "CEP", nullable = false, length = 8, columnDefinition = "char(8)")
	public String getCep() {
		return cep;
	}

	public void setCep(String cep) {
		this.cep = cep;
	}

}